package com.clothing.customization.service;

import com.clothing.customization.common.PageResult;
import com.clothing.customization.entity.ClothingMaterial;

/**
 * 服装材质服务接口
 */
public interface ClothingMaterialService {
    
    /**
     * 分页查询材质列表
     *
     * @param pageNum 页码
     * @param pageSize 每页条数
     * @param name 材质名称
     * @param status 状态
     * @return 分页结果
     */
    PageResult<ClothingMaterial> getMaterialList(Integer pageNum, Integer pageSize, String name, Integer status);
    
    /**
     * 根据ID获取材质
     *
     * @param id 材质ID
     * @return 材质信息
     */
    ClothingMaterial getById(Long id);
    
    /**
     * 添加材质
     *
     * @param material 材质信息
     * @return 添加后的材质
     */
    ClothingMaterial addMaterial(ClothingMaterial material);
    
    /**
     * 更新材质
     *
     * @param material 材质信息
     * @return 更新后的材质
     */
    ClothingMaterial updateMaterial(ClothingMaterial material);
    
    /**
     * 删除材质
     *
     * @param id 材质ID
     * @return 是否删除成功
     */
    boolean deleteMaterial(Long id);
    
    /**
     * 更新材质状态
     *
     * @param id 材质ID
     * @param status 状态
     * @return 是否更新成功
     */
    boolean updateStatus(Long id, Integer status);
} 